1. Field of the Invention
The present invention relates to an entertainment device that can execute integrative processes regarding plural kinds of processes pertained to multimedia such as an image or a sound, and structural parts of the entertainment device.
2. Description of the Related Art
As the communication and network technologies develop, an entertainment device, such as a digital broadcast set-top box or a home server that links a plurality of domestic devices, is becoming more popular.
FIG. 8 is a structural view showing a home server which is an example of the entertainment device. The home server is made up of various processor units such as a CPU (central processing unit), a GPU (graphics processing unit), an IPU (image processing unit) or a SPU (sound processing unit), a memory such as a RAM (random access memory), a network interface or a storage such as a hard disk device. The respective processor units read and execute a given computer program, respectively, to thereby realize various functions such as receiving, decoding, compression, decompression of data distributed through a network, distribution of data to a domestic network, or transmitting of data to the network.
The IPU is a specialized processor unit for executing image processing such as the decompression or decoding of compressed data, or the filtering or matching of an image at a high speed. The GPU is a processor for rendering, which may be called “graphic engine”. An SPUout is a processor unit for processing a sound output, which executes the filtering or effecting of a sound. An SPUin is a processor unit for executing a sound input, which executes sound band limit processing or high-speed Fourier transform processing.
The home server thus structured establishes various functions within the server in accordance with an application program. Hereinafter, the operation of the home server in the case where the application program for a game, a video and sound distribution and an image and sound communication is applied to the home server will be described.
1. Game
The CPU downloads a game program and data from a game server on a network in cooperation with a given basic program or an operating system, and then stores the game program and data thus downloaded in a storage. The CPU executes a game program stored in the storage and generates image data and sound data Then, the CPU transfers those image data and sound data to the GPU and the SPUout. The GPU generates an image on the basis of the image data, and the SPUout generates a sound on the basis of the sound data. A user plays a game while watching the generated image and sound, and operates the controller or the like if required. The operation data thus generated is inputted to the home server through an IO and influences on a progress on the game.
2. Video and Sound Distribution
The CPU downloads video data and sound data from a video server on a network in cooperation with a given basic program, and then stores the video data and sound data thus downloaded in a storage. The CPU reads the data stored in the storage, executes a given program recorded in a memory, and decodes the video and sound data to generate video and sound data. Then, the CPU transfers the video and sound data to the GPU and SPUout so as to display the video on a display through the GPU and output the sound from a speaker or the like through the SPUout. As a result, the user can watch the video and sound.
3. Communication Using Image and Sound
The IPU processes a digital moving image which is shot by a user using imaging device such as a digital movie camera. A band limit, a motion search and so on are executed through the image processing. The CPU compresses the digital moving image in accordance with the processing results of the IPU, and sends the compressed image to the network from the IO.
When a recipient who possesses the home server having the same function receives the above compressed video data from the network, the CPU in the home server executes the decompression program on the memory to decompress the received video data, and transmits the image thus decompressed to the IPU. The IPU executes the image processing on the image that has been subjected to decompression to generate video data whose image quality has been improved. The video derived from the video data is displayed on the display through the GPU. Likewise, the sound is compressed at a transmit side and decompressed at a receive side, and the sound thus obtained is outputted from a speaker or the like through the SPUout.
The substantially same operation as the home server is applied to a set-top box except that a connection manner with an external device is different.
The conventional home server selectively employs the GPU, the IPU, the SPUout, and the SPUin according to a user's demand, that is, the contents of the application program to be executed. However, there is a case in which plural kinds of application programs must be executed at the same time. For example, there is a case in which an image communication is required while the user is playing a game. In this situation, the respective processor units are required to execute plural pieces of processing as follows:
1) The GPU executes the image generation for a game and the image generation for image communication.
2) The IPU executes the input image processing for communication and the output image processing.
3) The SPUout executes the output sound processing for the game and the output sound processing for the communication.
4) The SPUin executes the input sound processing for the game and the input sound processing for the communication.
In order to thus execute the image processing and the image generation, or the sound output processing and the sound input processing at the same time, respectively, the simplest solution is to provide a plurality of IPUs, and also providing a plurality of the GPUs and the SPUs. However, in this event, in the case where plural kinds of processing are not conducted at the same time, i.e., only a single piece of processing is executed, many resources are not used, this is very inefficient. On the other hand, in case plural kinds of processing are executed in a single processor unit, there arise the following problems.
1) Lack of Performance
For example, in the case where image processing that is processed by the IPU is executed by a general-purpose processor unit, the amount of calculation for image processing is enormous, and the amount of calculation largely varies according to the kind of image to be processed or the contents of processing, as a result, the number of calculating units is insufficient for the amount of calculation. Also, since the single processor is employed, multiple access is not permitted As a result, sufficient performance can not be obtained, and plural kinds of processing cannot be executed at the same time.
2) Difficulties of Performance Estimate
In a mode where plural kinds of processing are executed by a single processor unit, such processing should be time-division process. For that reason, in this mode, because a change in a period of time required for one processing influences another processing, there is a case in which an estimated processing period of time for single processing is different from an actual processing period of time Also, the cash miss frequency in the process using single processor is remarkably different from that in the process using multiple processor employing common same resource, therefore, it is difficult to estimate the performance of the mode.